import request from "@/utils/request";

/**
 * 严重损坏房屋台账API接口
 */

/**
 * 获取严重损坏房屋台账列表
 * @param {Object} params 查询参数
 * @param {string} params.year 管辖年度 (必填)
 * @param {string} params.address 坐落地点
 * @param {string} params.blockAddress 所地址
 * @param {number} params.blockId 所编号
 * @param {string} params.buildingArea 建筑面积
 * @param {string} params.buildingDate 建筑年代
 * @param {string} params.classCode 室片代码
 * @param {string} params.districtName 区房屋管理单位
 * @param {string} params.houseAdminName 管理部(分中心)
 * @param {number} params.pageNum 页码
 * @param {number} params.pageSize 页大小
 * @returns {Promise} 响应数据
 */
export function getSeriousHouseList(params) {
  return request({
    url: "/safe/otherList",
    method: "GET",
    params
  });
}

/**
 * 获取严重损坏房屋台账年份列表
 * @returns {Promise} 响应数据 {code: number, message: string, data: Array<{years: string, count: number}>}
 */
export function getSeriousHouseYearList() {
  return request({
    url: "/safe/otherYearList",
    method: "GET"
  });
}

/**
 * 新建/修改严重损坏房屋台账
 * @param {Object} data 台账数据
 * @param {number} data.adminId 创建管理员ID
 * @param {number} data.blockId 所号ID
 * @param {string} data.blockName 所号名称
 * @param {string} data.buildingArea 建筑面积
 * @param {string} data.buildingDate 建筑年代
 * @param {number} data.buildingForm 建筑形式(0全部; 1平房; 2楼房; 3别墅)
 * @param {string} data.classCode 室片代码
 * @param {string} data.createTime 创建时间
 * @param {number} data.degreeDamage 完损程度(0全部; 1完好; 2基本完好; 3一般损坏; 4严重损坏; 5危险房屋)
 * @param {number} data.districtId 区房屋管理单位ID
 * @param {string} data.districtName 区房屋管理单位名称
 * @param {number} data.houseAdminId 管理部(分中心)ID
 * @param {string} data.houseAdminName 管理部(分中心)名称
 * @param {number} data.houseNature 房屋性质(0全部; 1住宅; 2商业; 3办公; 4工业)
 * @param {number} data.houseStructure 房屋结构(0全部; 1砖混结构; 2框架结构; 3钢结构; 4木结构)
 * @param {number} data.id ID (有ID为修改，无ID为新建)
 * @param {number} data.useCondition 使用状况(0未使用; 1正常使用; 2空置; 3待拆迁)
 * @param {number} data.years 管理年份
 * @returns {Promise} 响应数据 {code: number, data: object, message: string}
 */
export function saveOrUpdateSeriousHouse(data) {
  return request({
    url: "/safe/updOther",
    method: "POST",
    data
  });
}

/**
 * 新建严重损坏房屋台账
 * @param {Object} data 台账数据
 * @param {number} data.adminId 创建管理员ID
 * @param {number} data.blockId 所号ID
 * @param {string} data.blockName 所号名称
 * @param {string} data.buildingArea 建筑面积
 * @param {string} data.buildingDate 建筑年代
 * @param {number} data.buildingForm 建筑形式(0全部; 1平房; 2楼房; 3别墅)
 * @param {string} data.classCode 室片代码
 * @param {number} data.degreeDamage 完损程度(0全部; 1完好; 2基本完好; 3一般损坏; 4严重损坏; 5危险房屋)
 * @param {number} data.districtId 区房屋管理单位ID
 * @param {string} data.districtName 区房屋管理单位名称
 * @param {number} data.houseAdminId 管理部(分中心)ID
 * @param {string} data.houseAdminName 管理部(分中心)名称
 * @param {number} data.houseNature 房屋性质(0全部; 1住宅; 2商业; 3办公; 4工业)
 * @param {number} data.houseStructure 房屋结构(0全部; 1砖混结构; 2框架结构; 3钢结构; 4木结构)
 * @param {number} data.useCondition 使用状况(0未使用; 1正常使用; 2空置; 3待拆迁)
 * @param {number} data.years 管理年份
 * @returns {Promise} 响应数据 {code: number, data: object, message: string}
 */
export function addSeriousHouse(data) {
  return request({
    url: "/safe/addOther",
    method: "POST",
    data
  });
}

/**
 * 获取严重损坏房屋台账详情
 * @param {number} id 台账ID
 * @returns {Promise} 响应数据 {code: number, data: object, message: string}
 */
export function getSeriousHouseDetails(id) {
  return request({
    url: "/safe/otherDetails",
    method: "GET",
    params: { id }
  });
}

/**
 * 删除严重损坏房屋台账
 * @param {number} id 台账ID
 * @returns {Promise} 响应数据 {code: number, data: object, message: string}
 */
export function deleteSeriousHouse(id) {
  return request({
    url: "/safe/delOther",
    method: "GET",
    params: { id }
  });
}